import * as React from 'react';
import { PhoneNumberField, PhoneNumberFieldProps } from '@aws-amplify/ui-react';
import { Demo } from '@/components/Demo';
import {
PhoneNumberFieldPropControls,
PhoneNumberFieldPropControlsProps,
} from './PhoneNumberFieldPropControls';
import { usePhoneNumberFieldProps } from './usePhoneNumberFieldProps';
import { demoState } from '@/utils/demoState';
import { getPropString } from '../utils/getPropString';
const propsToCode = (props) => {
return (
``
);
};
const defaultPhoneNumberFieldProps: PhoneNumberFieldProps = {
defaultDialCode: '+1',
label: 'Phone number',
value: '',
descriptiveText: 'Please enter your phone number',
placeholder: '234-567-8910',
errorMessage: '',
labelHidden: false,
hasError: false,
isDisabled: false,
isReadOnly: false,
};
export const PhoneNumberFieldDemo = () => {
const phoneNumberFieldProps: PhoneNumberFieldPropControlsProps =
usePhoneNumberFieldProps(
(demoState.get(PhoneNumberField.displayName) as PhoneNumberFieldProps) ||
defaultPhoneNumberFieldProps
);
return (
}
>
phoneNumberFieldProps.setValue(event.target.value)}
defaultDialCode={phoneNumberFieldProps.defaultDialCode}
onDialCodeChange={(event) =>
phoneNumberFieldProps.setDefaultDialCode(event.target.value)
}
label={phoneNumberFieldProps.label}
labelHidden={phoneNumberFieldProps.labelHidden}
descriptiveText={phoneNumberFieldProps.descriptiveText}
placeholder={phoneNumberFieldProps.placeholder}
size={phoneNumberFieldProps.size}
variation={phoneNumberFieldProps.variation}
errorMessage={phoneNumberFieldProps.errorMessage}
hasError={phoneNumberFieldProps.hasError}
isDisabled={phoneNumberFieldProps.isDisabled}
isReadOnly={phoneNumberFieldProps.isReadOnly}
/>
);
};